/**
 * 该类是localstorage工具封装;
 * 现在近支持默认的存储方式;
 * todo:扩展到其他的存储方式;
 */
class GLCusStorage {
  bUseDefault = true; //是否使用默认存储方式

  init() {
    this.bUseDefault = true;
  }
  setUseDefault(use) {
    this.bUseDefault = use;
  }
  getUseDefault(use) {
    return this.bUseDefault;
  }
  /**
   * get;
   */
  getItem(key) {
    if (this.bUseDefault) {
      return cc.sys.localStorage.getItem(key);
    } else {
    }
  }
  /**
   * set;
   */
  setItem(key, data) {
    if (this.bUseDefault) {
      cc.sys.localStorage.setItem(key, data);
    } else {
    }
  }
  /**
   * remove;
   */
  removeItem(key) {
    if (this.bUseDefault) {
      cc.sys.localStorage.removeItem(key);
    } else {
    }
  }
  /**
   * 获取数组存储对象
   */
  getArrItem(key) {
    if (this.bUseDefault) {
      var dataArr = [];
      var datastr = cc.sys.localStorage.getItem(key);
      if (datastr != null && datastr != undefined) {
        dataArr = datastr.split(",");
      }
      console.log("getArrItem dataArr:" + JSON.stringify(dataArr));
      return dataArr;
    } else {
    }
  }
  /**
   * 存储数组到本地
   */
  setArrItem(key, data) {
    if (this.bUseDefault) {
      var datastr = "";
      if (data.length > 0) {
        datastr = data[0];
        for (var i = 1; i < data.length; i++) {
          datastr = datastr + "," + data[i];
        }
      } else {
        datastr = data;
      }
      cc.sys.localStorage.setItem(key, datastr);
    } else {
    }
  }
}
export let glCusStorage: GLCusStorage = new GLCusStorage();
